package com.sz.virtualbank.web.vo.loan;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.Min;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 贷款申请请求对象
 * 
 * @author Claude
 */
@Data
@ApiModel("贷款申请请求")
public class LoanApplyReqVO {
    
    @ApiModelProperty(value = "贷款金额", required = true)
    @NotNull(message = "贷款金额不能为空")
    @DecimalMin(value = "1000", message = "贷款金额必须大于等于1000")
    private BigDecimal amount;
    
    @ApiModelProperty(value = "贷款期限(月)", required = true)
    @NotNull(message = "贷款期限不能为空")
    @Min(value = 1, message = "贷款期限必须大于等于1个月")
    private Integer loanTerm;
    
    @ApiModelProperty(value = "贷款用途")
    private String purpose;
    
    @ApiModelProperty(value = "还款方式(1:等额本息,2:等额本金,3:一次性还本付息)", required = true)
    @NotNull(message = "还款方式不能为空")
    private Integer repaymentMethod;
}
